package com.umpay.dto.merBusi.req.payment;


import com.umpay.annotation.Pattern;
import com.umpay.dto.merBusi.req.CommonBusiReq;
import org.hibernate.validator.constraints.NotEmpty;

import javax.validation.constraints.NotNull;

/* ******************  类说明  *********************
 * class       :  AgreementPayBusiReq
 * @author     :  sxl
 * @date       :  2018年8月27日 上午10:33:55
 * @version    :  1.0  
 * description :  商业委托协议支付支付请求类
 * @see        :                        
 * ************************************************/   
public class AgreementPayBusiReq extends CommonBusiReq {
	/**
	 * 商户号
	 */
	@NotEmpty(message = "商户号不能为空")
	@Pattern(message="商户号格式不正确")
	private String merId;
	@NotEmpty(message = "交易号不能为空")		
	@Pattern(message = "交易号格式不正确")
	private String tradeNo;	//联动交易号
	@NotEmpty(message = "支付交易流水号不能为空")		
	@Pattern(message = "支付交易流水号格式不正确")
	private String merTrace;	//支付交易流水
	@NotEmpty(message = "金额不能为空")		
	@Pattern(message = "金额格式不正确")
	private String amount;	//金额
	@NotEmpty(message = "子商户编号不能为空")
	@Pattern(message="子商户编号格式不正确")
	private String merCustId;
	@NotEmpty(message = "业务产品号不能为空")
	@Pattern(message="业务产品号格式不正确")
	private String bProductId;
	@NotEmpty(message = "支付产品号不能为空")
	@Pattern(message="支付产品号格式不正确")
	private String pProductId;
	@NotNull(message = "支付协议号不能为空")
	@Pattern(message = "支付协议号格式不正确")
	private String pAgreementId;//	支付协议号	变长20	Y
	@Pattern(message = "商户通知地址格式不正确")
	private String notifyUrl;	//商户通知地址
	
	public String getMerId() {
		return merId;
	}

	public void setMerId(String merId) {
		this.merId = merId;
	}

	public String getTradeNo() {
		return tradeNo;
	}

	public void setTradeNo(String tradeNo) {
		this.tradeNo = tradeNo;
	}

	public String getMerTrace() {
		return merTrace;
	}

	public void setMerTrace(String merTrace) {
		this.merTrace = merTrace;
	}

	public String getAmount() {
		return amount;
	}

	public void setAmount(String amount) {
		this.amount = amount;
	}

	public String getMerCustId() {
		return merCustId;
	}

	public void setMerCustId(String merCustId) {
		this.merCustId = merCustId;
	}

	public String getbProductId() {
		return bProductId;
	}

	public void setbProductId(String bProductId) {
		this.bProductId = bProductId;
	}

	public String getpProductId() {
		return pProductId;
	}

	public void setpProductId(String pProductId) {
		this.pProductId = pProductId;
	}

	public String getpAgreementId() {
		return pAgreementId;
	}

	public void setpAgreementId(String pAgreementId) {
		this.pAgreementId = pAgreementId;
	}

	public String getNotifyUrl() {
		return notifyUrl;
	}

	public void setNotifyUrl(String notifyUrl) {
		this.notifyUrl = notifyUrl;
	}

	@Override
	public String toString() {
		return  "AgreementPayBusiReq [merId=" + merId + ", tradeNo=" + tradeNo + ", merTrace=" + merTrace + ", amount="
				+ amount + ", merCustId=" + merCustId + ", bProductId=" + bProductId + ", pProductId=" + pProductId
				+ ", pAgreementId=" + pAgreementId + ", notifyUrl=" + notifyUrl + "]";
	}
}
